/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */

package pe.edu.pucp.dp1.gui.modelo;
import java.lang.NullPointerException;

/**
 *
 * @author Ed
 */
public class ObjCar {        
    private String placa;
    private CoordCar posAnt;//posicion anterior
    public CoordCar posAct;//posicion actual
    private CoordCar posPos;//posicion posterior
    public char sentido;// N:norte, O:oeste, S:sur, E:este X:parado o primer movimiento
    private float velocidad;
    private int countDetenido;//segundos detenido
    private boolean alarmStop;//true si ya paso el limite maximo detenido (180seg)
    private int posX=-1;//x actual    
    private int posY=-1;//y actual
    
    public ObjCar(){}
    
    public ObjCar(String plac)
    {
        setPlaca(plac);
        setPosAnt(null);
        setPosAct(null);
        setSentido('X');
        setCountDetenido(0);
        setAlarmStop(false);    
    }

    public String getPlaca() {
        return placa;
    }

    public void setPlaca(String placa) {
        this.placa = placa;
    }

    public CoordCar getPosAnt() {
        return posAnt;
    }

    public void setPosAnt(CoordCar posAnt) {
        this.posAnt = posAnt;
    }
    
    public char getSentido() {
        return sentido;
    }

    public void setSentido(char sentido) {
        this.sentido = sentido;
    }

    public float getVelocidad() {
        return velocidad;
    }

    public void setVelocidad(float velocidad) {
        this.velocidad = velocidad;
    }

    public int getCountDetenido() {
        return countDetenido;
    }

    public void setCountDetenido(int countDetenido) {
        this.countDetenido = countDetenido;
    }

    public boolean isAlarmStop() {
        return alarmStop;
    }

    public void setAlarmStop(boolean alarmStop) {
        this.alarmStop = alarmStop;
    }

    public int getPosX() {
        return posX;
    }

    public void setPosX(int posX) {
        this.posX = posX;
    }

    public int getPosY() {
        return posY;
    }

    public void setPosY(int posY) {
        this.posY = posY;
    }

    public CoordCar getPosAct() {
        return posAct;
    }

    private void setPosAct(CoordCar posAct) {        
        this.posAct = posAct;
        if(posAct!=null)
        {
            this.setPosX(posAct.getXx());
            this.setPosY(posAct.getYy());      
        }
    }

    public CoordCar getPosPos() {
        return posPos;
    }

    public void setPosPos(CoordCar posPos) {
        this.posPos = posPos;
    }    
}
